The first personal computers became publicly available a few decades ago and, generally, comprised hardware, software, and firmware components such as a central processing unit, volatile and non-volatile memories, and operating system software with user interfaces. Each such computer was a stand-alone, self-contained device upon which a user could load, store and execute various software applications. When a user required a software application for a specific purpose, the user could go to a software store and purchase a software application to suit the particular need. However, if the purchased software application required capabilities that the user's computer did not have, the user might be forced to either upgrade his/her computer or purchase another computer that could run the software application. Similarly, if the software application became obsolete for the user's purposes, the user might either buy an upgraded version of the software application or a new software application with the desired capabilities.
The next era of personal computing provided the ability to communicatively link personal computers together through the use of a variety of communications networks. Modems and other communication devices were added to personal computers to enable them to access private intranet networks and the public Internet, in particular the World Wide Web. Such bi-directional communication capabilities allowed information to be shared between computers. For example, web sites built around centrally-located server computers were capable of distributing and receiving information from networked remote computers. Some such web sites allowed users to download software applications and/or software application upgrades, while others allowed users to upload data files for storage on the central server computer.
Recently, the popularity of the public Internet has encouraged the development of a variety of computing and communication devices that are able to access the World Wide Web, in either full or abbreviated form, depending on the capabilities of the device. For instance, most desktop personal computers provide a full range of uploading and downloading capabilities, while other devices may be narrowly tailored for specific capabilities. Examples of such other devices include network terminals, pocket PCs, wireless telephones, cable television converter boxes, and home video game machines. In addition, many traditional devices like kitchen appliances and automobiles now comprise “Internet-ready” devices, allowing a user the option of accessing the public Internet from virtually any location at any time, often without bulky equipment or complex connections to communication outlets.
Advances in real-time collaboration between networked computing devices have made it attractive for the software applications that were once purchased by users through software stores to be converted for use on “on-line service platforms” residing on server computers that are remotely accessible via the World Wide Web. Such on-line service platforms store and execute software applications on a server computer thereof, allowing the software applications to be utilized by users having computing or communication devices with less robust memory and processing capabilities. As a consequence, users with less robust communication or computing devices may now access and use software applications having many of the same capabilities as users with more robust personal communication or computing devices.
While such on-line service platforms enable users to access and use software applications with less robust communication or computing devices and without requiring that users purchase licenses to the software applications and periodically upgrade such software applications, on-line service platforms only allow users to access and use software applications that are available thereon. Therefore, if a user desires to use a software application not present on an on-line service platform, the user must find another on-line service platform that offers the software application or, alternatively, purchase a license to the software application and install the software application on his/her communication or computing device in order to use the software application since the on-line service platforms do not allow a user to load software applications thereon. Also, the on-line service platforms do not, generally, allow a user to upload data which the user may use in connection with a particular software application. As a consequence, a user may have to store large data files or databases on his/her communication or computing device and retain the responsibility for backing up such data files or databases. Additionally, each on-line service platform, typically, provides users with a single user interface that particular users may or may not prefer. If a user utilizes a number of on-line service platforms, the user must, therefore, become familiar with all of the different user interfaces of the different on-line service platforms in order to effectively utilize the on-line service platforms.
Therefore, there exists in the industry, a need for an on-line service provider that provides on-line computing services to users and for a system, including apparatuses and methods, for providing such on-line computing services to users, that address these and other problems or difficulties which exist now or in the future.